In data processing operations, it is frequently required to create and maintain an ordered list of values in a computer readable memory, and subsequently to determine whether given values are contained within the table. If the table is very short, a straightforward approach is to sequentially search the table, testing each value to see whether it is equal to a particular given value. For longer tables, however, sequential search is too time-consuming, and a technique known as a binary search is commonly used. In the binary search technique, the middle or central value in the table is tested against the given value. If the middle and given values are equal, then given value has been found in the table, and the process is complete. If the middle and given values are not equal, then advantage is taken of the fact that the table is ordered. In particular, if the given value is less than the middle value, then the bottom half of the table is "discarded," and a new middle value is established based upon the remaining upper half of the table. The given value is then tested against the new middle value. This process is continued until a table value equal to the given value is found, or until the table has been exhausted.